package fr.projet.danish.strategy;

import java.util.ArrayList;

import fr.projet.danish.cartes.*;
import fr.projet.danish.collections.*;
 
public class StrategieDefensive implements Strategy{
	
	public ArrayList<Carte> poserCarte(Tas tas, MainJoueur main){
		ArrayList<Carte> resBasic = new ArrayList<Carte>();
		ArrayList<Carte> resSpec = new ArrayList<Carte>();
		
		ArrayList<Integer> carteSpec = new ArrayList<Integer>();
		
		for(int i: Carte.VALEURSCartesSpec){
			carteSpec.add(i);
		}
		
		int i = 0;
		
		for(Carte c: main.getMain()){
			if(tas.getTopCarte()==null || c.getValeur()>=tas.getTopCarte().getValeur()){
				if(carteSpec.contains(c.getValeur())){ // ajouter plusieurs cartes /!\
					if(resSpec.size() == 0)	resSpec.add(c);
				}else{
					if(resBasic.size() == 0 || resBasic.get(0).getValeur()==c.getValeur()) resBasic.add(c);
				}
			}
			i=i+1;
		}
		
		if(resBasic.size()==0){
			main.getMain().removeAll(resSpec); // on supprime les cartes de la main des joueurs
			return resSpec;
		}else{
			main.getMain().removeAll(resBasic);
			return resBasic;
		}
	}
}
